Automated deal guide structure identification

ABSTRACT

A method, apparatus, and computer program product are disclosed for updating a structure database. The method includes accessing a corpus of machine readable text generated based on a plurality of promotions, wherein each of the plurality of promotions comprises at least one promotion option associated with at least one service, and extracting features from the promotion options, the features being mapped to services associated with respective promotion options from which the features are extracted. The method further includes identifying one or more components associated with the extracted features, tagging, using a processor, each promotion option with every component associated with at least one feature of the promotion option, and updating a structure database using the tagged promotion options. A corresponding apparatus and computer program product are also provided.

CROSS REFERENCE TO RELATED APPLICATION

This application is a continuation of U.S. patent application Ser. No.16/661,476, filed Oct. 23, 2019, which is a continuation of U.S. patentapplication Ser. No. 14/038,629, filed Sep. 26, 2013 (now U.S. Pat. No.10,475,083), each of which is hereby incorporated herein by reference.

TECHNOLOGICAL FIELD

Example embodiments of the present invention relate generally topromotion generation and, more particularly, to a method and apparatusfor providing promotion options that sales representatives can use tonegotiate with merchants to design promotions.

BACKGROUND

Applicant has discovered problems with current methods for generatingpromotions for redemption by consumers. Through applied effort,ingenuity, and innovation, Applicant has solved many of these identifiedproblems by developing a solution that is embodied by the presentinvention, which is described in detail below.

BRIEF SUMMARY

A method, apparatus, and computer program product are provided forimproving the approval process for generated promotions.

In a first example embodiment, a method is provided for updating astructure database. The method includes accessing a corpus of machinereadable text generated based on a plurality of promotions, wherein eachof the plurality of promotions comprises at least one promotion optionassociated with at least one service, and extracting features from thepromotion options, the features being mapped to services associated withrespective promotion options from which the features are extracted. Themethod further includes identifying one or more components associatedwith the extracted features, tagging, using a processor, each promotionoption with every component associated with at least one feature of thepromotion option, and updating a structure database using the taggedpromotion options.

In one embodiment, the method further includes normalizing the promotionoptions prior to extracting the one or more features. In this regard,normalizing the promotion options may include at least one operationselected from the group of: removing stop words; and substitutingoriginal words with equivalent standardized words.

In another embodiment of the method, extracting features from a targetpromotion option includes analyzing a frequency with which single terms,bigrams, and trigrams occur in the target promotion option, andextracting single terms, bigrams, and trigrams based on the frequencywith which the single terms, bigrams, and trigrams occur in the targetpromotion option. In one such embodiment, extracting single terms,bigrams, and trigrams includes extracting a first number of mostfrequently occurring single terms, extracting a second number of mostfrequently occurring bigrams, and extracting a third number of mostfrequently occurring trigrams. In this regard, the first number, thesecond number, and the third number may be equal to each other. Inanother such embodiment, extracting single terms, bigrams, and trigramscomprises extracting the single terms, bigrams, and trigrams that occurwith frequencies that satisfy one or more predefined thresholds.

In another embodiment of the method, identifying the one or morecomponents associated with the extracted features includes selecting oneor more components based on terms occurring among the extractedfeatures, defining groups of extracted features based on the selectedone or more components, and associating each extracted feature with oneof the selected components based on the defined groups. In one suchembodiment, identifying the one or more components associated with theextracted features is performed by the processor.

In another embodiment of the method, updating the structure databaseusing the tagged promotion options includes, for each tagged promotionoption, generating a promotion structure comprising the taggedcomponents, associating the promotion structure with the at least oneservice associated with the tagged promotion option, and storing thepromotion option structure in the structure database. In one suchembodiment, generating the promotion structure includes developing a newtitle for the promotion structure based on at least one of termequivalencies, region, peer group, or market segment.

In another example embodiment, an apparatus is provided for updating astructure database. The apparatus includes a processor and a memory, thememory storing computer program code that, when executed by theprocessor, causes the apparatus to access a corpus of machine readabletext generated based on a plurality of promotions, wherein each of theplurality of promotions comprises at least one promotion optionassociated with at least one service, and extract features from thepromotion options, the features being mapped to services associated withrespective promotion options from which the features are extracted. Thecomputer program code, when executed by the processor, further causesthe apparatus to identify one or more components associated with theextracted features, tag each promotion option with every componentassociated with at least one feature of the promotion option, and updatea structure database using the tagged promotion options.

In one embodiment, the computer program code, when executed by theprocessor, causes the apparatus to normalize the promotion options priorto extracting the one or more features. In this regard, normalizing thepromotion options comprises at least one operation selected from thegroup of: removing stop words; and substituting original words withequivalent standardized words.

In another embodiment of the apparatus, extracting features from atarget promotion option includes analyzing a frequency with which singleterms, bigrams, and trigrams occur in the target promotion option, andextracting single terms, bigrams, and trigrams based on the frequencywith which the single terms, bigrams, and trigrams occur in the targetpromotion option. In one such embodiment, extracting single terms,bigrams, and trigrams includes extracting a first number of mostfrequently occurring single terms, extracting a second number of mostfrequently occurring bigrams, and extracting a third number of mostfrequently occurring trigrams. In this regard, the first number, thesecond number, and the third number may be equal to each other. Inanother such embodiment, extracting single terms, bigrams, and trigramscomprises extracting the single terms, bigrams, and trigrams that occurwith frequencies that satisfy one or more predefined thresholds.

In another embodiment of the apparatus, identifying the one or morecomponents associated with the extracted features includes selecting oneor more components based on terms occurring among the extractedfeatures, defining groups of extracted features based on the selectedone or more components, and associating each extracted feature with oneof the selected components based on the defined groups.

In another embodiment of the apparatus, updating the structure databaseusing the tagged promotion options includes, for each tagged promotionoption, generating a promotion structure comprising the taggedcomponents, associating the promotion structure with the at least oneservice associated with the tagged promotion option, and storing thepromotion option structure in the structure database. In one suchembodiment, generating the promotion structure includes developing a newtitle for the promotion structure based on at least one of termequivalencies, region, peer group, or market segment.

In another example embodiment, a computer program product is providedfor updating a structure database. The computer program product includesa computer-readable storage medium storing computer program code that,when executed by an apparatus, causes the apparatus to access a corpusof machine readable text generated based on a plurality of promotions,wherein each of the plurality of promotions comprises at least onepromotion option associated with at least one service, and extractfeatures from the promotion options, the features being mapped toservices associated with respective promotion options from which thefeatures are extracted. The computer program code, when executed by theapparatus, further causes the apparatus to identify one or morecomponents associated with the extracted features, tag each promotionoption with every component associated with at least one feature of thepromotion option, and update a structure database using the taggedpromotion options.

In one embodiment, the computer program code, when executed by theapparatus, causes the apparatus to normalize the promotion options priorto extracting the one or more features. In this regard, normalizing thepromotion options comprises at least one operation selected from thegroup of: removing stop words; and substituting original words withequivalent standardized words.

In another embodiment of the computer program product, extractingfeatures from a target promotion option includes analyzing a frequencywith which single terms, bigrams, and trigrams occur in the targetpromotion option, and extracting single terms, bigrams, and trigramsbased on the frequency with which the single terms, bigrams, andtrigrams occur in the target promotion option. In one such embodiment,extracting single terms, bigrams, and trigrams includes extracting afirst number of most frequently occurring single terms, extracting asecond number of most frequently occurring bigrams, and extracting athird number of most frequently occurring trigrams. In this regard, thefirst number, the second number, and the third number may be equal toeach other. In another such embodiment, extracting single terms,bigrams, and trigrams comprises extracting the single terms, bigrams,and trigrams that occur with frequencies that satisfy one or morepredefined thresholds.

In another embodiment of the computer program product, identifying theone or more components associated with the extracted features includesselecting one or more components based on terms occurring among theextracted features, defining groups of extracted features based on theselected one or more components, and associating each extracted featurewith one of the selected components based on the defined groups.

In another embodiment of the computer program product, updating thestructure database using the tagged promotion options includes, for eachtagged promotion option, generating a promotion structure comprising thetagged components, associating the promotion structure with the at leastone service associated with the tagged promotion option, and storing thepromotion option structure in the structure database. In one suchembodiment, generating the promotion structure includes developing a newtitle for the promotion structure based on at least one of termequivalencies, region, peer group, or market segment.

The above summary is provided merely for purposes of summarizing someexample embodiments to provide a basic understanding of some aspects ofthe invention. Accordingly, it will be appreciated that theabove-described embodiments are merely examples and should not beconstrued to narrow the scope or spirit of the invention in any way. Itwill be appreciated that the scope of the invention encompasses manypotential embodiments in addition to those here summarized, some ofwhich will be further described below.

BRIEF DESCRIPTION OF THE DRAWINGS

Having thus described certain example embodiments of the presentdisclosure in general terms, reference will now be made to theaccompanying drawings, which are not necessarily drawn to scale, andwherein:

FIG. 1 illustrates an example system within which embodiments of thepresent invention may operate;

FIG. 2 illustrates a block diagram showing an example device for use ina promotional server, in accordance with some example embodiments of thepresent invention;

FIG. 3 illustrates a block diagram showing an example device for use bya sales representative or merchant, in accordance with an exampleembodiment of the present invention;

FIG. 4 illustrates a flowchart describing example operations forcharacterizing the structure of a promotion, in accordance with someexample embodiments;

FIG. 5 illustrates a flowchart describing example operations for scoringelements of a structure database, in accordance with some exampleembodiments;

FIG. 6 illustrates an example user interface for a user to select anapplicable service for which to design a promotion, in accordance withsome example embodiments;

FIG. 7 illustrates an example user interface for a user to selectpromotion options, in accordance with some example embodiments;

FIG. 8 illustrates another example user interface for a user to editpromotion options, in accordance with some example embodiments;

FIG. 9 illustrates a flowchart describing example operations forgenerating a promotion structure, in accordance with some exampleembodiments;

FIG. 10 illustrates an example user interface via which a user receivesan automated approval of a promotion structure, in accordance with someexample embodiments;

FIG. 11 illustrates an example user interface via which a user receivesan indication of a lack of approval of a promotion structure, inaccordance with some example embodiments; and

FIG. 12 illustrates a flowchart describing example operations forautomatically rendering an approval decision for a promotion structure,in accordance with some example embodiments.

DETAILED DESCRIPTION

Some embodiments of the present invention will now be described morefully hereinafter with reference to the accompanying drawings, in whichsome, but not all embodiments of the inventions are shown. Indeed, theseinventions may be embodied in many different forms and should not beconstrued as limited to the embodiments set forth herein; rather, theseembodiments are provided so that this disclosure will satisfy applicablelegal requirements. Like numbers refer to like elements throughout.

As used herein, the terms “data,” “content,” “information,” and similarterms may be used interchangeably to refer to data capable of beingtransmitted, received, and/or stored in accordance with embodiments ofthe present invention. Thus, use of any such terms should not be takento limit the spirit and scope of embodiments of the present invention.Further, where a computing device is described herein to receive datafrom another computing device, it will be appreciated that the data maybe received directly from the another computing device or may bereceived indirectly via one or more intermediary computing devices, suchas, for example, one or more servers, relays, routers, network accesspoints, base stations, hosts, and/or the like, sometimes referred toherein as a “network.” Similarly, where a computing device is describedherein to send data to another computing device, it will be appreciatedthat the data may be sent directly to the another computing device ormay be sent indirectly via one or more intermediary computing devices,such as, for example, one or more servers, relays, routers, networkaccess points, base stations, hosts, and/or the like.

As used herein, the term “promotion and marketing service” may include aservice that is accessible via one or more computing devices and isoperable to provide example promotion and/or marketing services onbehalf of one or more providers that are offering one or moreinstruments that are redeemable for goods, services, experiences and/orthe like. In some examples, the promotion and marketing service may takethe form of a redemption authority, a payment processor, a rewardsprovider, an entity in a financial network, a promoter, an agent and/orthe like. As such, the service is, in some example embodiments,configured to present one or more promotions via one or moreimpressions, accept payments for promotions from consumers, issueinstruments upon acceptance of an offer, participate in redemption,generate rewards, provide a point of sale device or service, issuepayments to providers and/or or otherwise participate in the exchange ofgoods, services or experiences for currency, value and/or the like.

As used herein, the term “merchant” may include, but is not limited to,a business owner, consigner, shopkeeper, tradesperson, vender, operator,entrepreneur, agent, dealer, organization or the like that is in thebusiness of a providing a good, service or experience to a consumer,facilitating the provision of a good, service or experience to aconsumer and/or otherwise operating in the stream of commerce. Oneexample merchant may be a running company that sells attire for use by aperson who runs or participates in athletic activities.

As used herein, the term “promotion” may include, but is not limited to,any type of offered, presented or otherwise indicated reward, discount,coupon, credit, deal, incentive, discount, media or the like that isindicative of a promotional value or the like that upon purchase oracceptance results in the issuance of an instrument that may be usedtoward at least a portion of the purchase of particular goods, servicesand/or experiences defined by the promotion. An example promotion, usingthe aforementioned running company as the example provider, is $25 for$50 toward running shoes. In some examples, the promotion defines anaccepted value (e.g., a cost to purchase the promotion), a promotionalvalue (e.g., the value of the resultant instrument beyond the acceptedvalue), a residual value (e.g., the value upon return or upon expiry ofone or more redemption parameters), one or more redemptions parametersand/or the like. Using the running company promotion as an example, theaccepted value is $25 and the promotional value is $50. In this example,the residual value may be equal to the accepted value.

As used herein, the term “service” may generally describe an actionoffered by a merchant in exchange for compensation. In this regard, aservice may be a general descriptor of the action, and need not includeinformation such as a duration, frequency, total number of times thatthe action will be performed, or even the compensation necessary forperformance of the action. Using the aforementioned running company, anexample service may be a private coaching session. In this example, theservice itself need not include the duration of the coaching, thefrequency of the lessons, the number of lessons that will be provided,or the cost of the lesson.

As used herein, the term “feature” may generally describe a single word,a bigram (a two term pair), or a trigram (a three term tuples). In someembodiments, a feature may comprise an N-term tuple, where N may be asize that a user, a machine operating an algorithm or the likedetermines is most appropriate. In relation to the context of apromotion and marketing service, each feature comprises the buildingblocks of a promotion. Examples of features might be “half-marathon”“half marathon,” “5k” “race,” “registration,” “entry,” “one year,”“1-year,” “1 year,” “run jump swim,” or the like.

As used herein, the term “promotion option” may be mapped to at leastone service in a service hierarchy and may also include further detailsregarding provision of the service that may be relevant to a promotion.In this regard, a promotion option includes a title, and, if itcomprises a single-option promotion, a subtitle. If the promotion optioncomprises a multi-option promotion, however, then each of the multipleoptions has a corresponding voucher title. In addition, the text of apromotion option (including voucher titles or subtitles) is comprised ofa series of features interspersed with stop words (e.g., “the,” “is,”“at,” “which,” “on,” etc.). Each promotion option is additionallyassociated with one or more services. Example promotion options, usingthe aforementioned running company as the example provider, might be“remote private coaching session” and “live private coaching session.”In these examples, the features comprising the promotion options are atleast “remote,” “live,” and “private coaching session” (the manner withwhich features are identified is further discussed below). Other examplepromotion options outside the context of the running company example maybe “Small area: unlimited laser hair-removal sessions for one year”(which may have features “Small area,” “unlimited,” “laser hair-removalsessions,” and “one year”), “Medium area: unlimited laser hair-removalsessions for one year” (which may have features “Medium area,”“unlimited,” “laser hair-removal sessions,” and “one year”), “Full body:six laser hair-removal sessions” (which may have features “Full body”and “six sessions”), and “Large area: unlimited laser hair-removalsessions for one year” (which may have features “Large area,”“unlimited,” “laser hair-removal sessions,” and “one year”).

As used herein, the term “component” comprises a term or phrase that isequivalent to a grouping of features. Each component accordingly isintended to represent an actual concept, which, when using naturallanguage, can often be described as using or otherwise relating to alarge variety of different terms or phrases (e.g., features).Accordingly, each component is associated with a grouping of featuresthat the promotion and marketing service believes have an equivalentmeaning in a given context. Examples components might be “race” and“registration,” and may have the following groupings of features mappedthereto (each feature comprising a set of one to three words withinbrackets in this example, although in other examples, each feature maycomprise an arbitrarily large number of terms within brackets):

1. Component: race

[race] [‘5k’,‘race’] [‘race’,‘entry’] [‘race’,‘registration’]

[‘race’,‘saturday’] [‘race’,‘september’] [‘5k’,‘race’,‘8’]

[‘5k’,‘race’,‘entry’] [‘adventure’,‘5k’,‘race’]

[‘race’,‘registration’,‘1’] [‘race’,‘registration’,‘2’]

[‘race’,‘september’,‘29’] [‘rad’,‘5k’,‘race’]

2. Leisure Offers/Activities Running Component: registration

[registration] [‘5k’,‘registration’] [‘race’,‘registration’]

[‘registration’,‘2’] [‘race’,‘registration’,‘1’]

[‘race’,‘registration’,‘2’]

As used herein, the term “promotion option structure” refers to the sameunderlying information as a promotion option, but does not comprisetext. Rather, a promotion option structure is made up a series ofcomponents that are equivalent to the various features of a promotionoption. In this regard, a promotion option structure may correspond tomultiple promotion options, in that two promotion options might presentthe same concept to a user, despite using distinct language. Incontrast, no two promotion option structures present the same concept.In addition, promotion option structures also include or otherwise canbe mapped to titles generated based on the components included therein.Moreover, each promotion option structure is additional associated withone or more services in a defined service hierarchy. Examples ofpromotion option structures, using the above example promotion options“remote private coaching session” and “live private coaching session,”might be (Component: “remote”; Component: “private coaching session”)and (Component: “live”; Component: “private coaching session”),respectively.

As used herein, the term “promotion structure” refers to a particularcombination of promotion option structures. In this regard, a promotionstructure may include only a single promotion option structure, or mayinclude multiple promotion option structures. For instance, examplepromotion structures, using the example promotion option structuresabove, might be the following:

Promotion Structure 1:

-   -   Promotion Option Structure 1:

-   Component: “remote”; Component: “private coaching session”

Promotion Structure 2:

-   -   Promotion Option Structure 1:

-   Component: “remote”; Component: “private coaching session”    -   Promotion Option Structure 2:

-   Component: “live”; Component: “private coaching session”    Each promotion structure is, like every promotion option and    promotion option structure, associated with one or more services.

Overview

A method, apparatus, and computer program product are provided inaccordance with an example embodiment of the present invention in orderto improve the ease with which sales representatives can negotiate withmerchants to design promotions.

Historically, development of new promotions has involved a merchant, asales representative of a promotion and marketing service, and also a“city planner” or other business level manager who manages thepromotions for particular regions on behalf of the promotion andmarketing service. The city planner typically must sign off on the termsof any new promotion. This occurs for several reasons, one of which isthat sales representatives typically are rewarded for closing deals withmerchants to offer promotions, but as a result may not have the properincentive to maximize the quality of the promotions that areimplemented. Similarly, sales representatives may not be aware of thebreadth of promotions that are offered by other sales representatives ina region. City planners, on the other hand, are not burdened by theincentive structures of sales representatives, and also are able towitness the promotions secured by a variety of sales representatives,and accordingly can more authoritatively determine whether a deal is“good” or not for the promotion and marketing service.

However, involvement of a city planner can also detract from a salesrepresentative's negotiation with a merchant, due to the fact that thesales representative often cannot unilaterally agree to promotion termmodification without seeking approval from the city planner.Additionally, waiting for approval can stall a negotiation, which may beall the delay needed for a busy merchant to lose interest in setting upthe promotion in the first place.

To reduce reliance on city planners, however, requires increasing theability to automate promotion option analysis and, in some examples,automating approval of promotions. In this regard, a structure database(such as that shown in FIG. 1) must be populated with promotioninformation that can be automatically identified, sorted, and providedto sales representatives. In this regard, a principle function of thepromotional system 102 is directed to the development of promotionoption structures, which provide this functionality. To generatepromotion option structures, embodiments of the present invention areconfigured and/or otherwise operable to parse the constituent elementsof previously offered promotion options to provide the foundationalstructure for generating and evaluating the merits of future promotions.

Once the structure database is populated with promotion information thatcan be quickly and efficiently identified and sorted, enhancedexploitation of promotion information is possible by optimizing thepresentation of various promotion options, promotion option structures,and promotion structures. In this regard, another principle function ofthe promotional system 102 is the scoring and ranking of promotioninformation, which can be used by sales representatives to quicklyidentify and present “good” and/or “acceptable” promotion options tomerchants.

As a result, by relying upon the scoring and ranking of the informationstored in structure database, embodiments of the present invention areable to provide information to sales representatives that enables theauthoritative offering of promotion options without the need to consulta city planner, while ensuring that any offered promotion option will beconsidered a “good” promotion, if accepted by a merchant. Alternativelyor additionally, because the promotions are defined at the foundationalstructure or component level, sales representatives can be presentedwith various options structures to offer a merchant based on a category,service or the like that defines that merchant. See e.g., FIGS. 6-8.

Accordingly, example embodiments of the present invention provide a wayto maintain the flexibility and modifiability of promotion options,while characterizing their structure in a way that is useful forstatistical analysis, scoring, and ranking of promotion options. Inaddition, example embodiments of the present invention enhance the salesrepresentative and merchant experiences, by reducing reliance on cityplanners, while also increasing the reliability with which salesrepresentatives are able to present good promotion options for merchantselection.

System Architecture

The method, apparatus, and computer program product of the presentinvention may be embodied by any of a variety of devices. For example,the method, apparatus, and computer program product of an exampleembodiment may be embodied by a networked device, such as a server orother network entity, configured to communicate with one or moredevices, such as one or more client devices. Additionally oralternatively, the computing device may include fixed computing devices,such as a personal computer or a computer workstation. Still further, anexample embodiment may be embodied by any of a variety of mobileterminals, such as a portable digital assistant (PDA), mobile telephone,smartphone, laptop computer, tablet computer, or any combination of theaforementioned devices.

In this regard, FIG. 1 discloses an example computing system withinwhich embodiments of the present invention may operate. Salesrepresentatives may access a promotional system 102 via a network 112(such as the Internet, or the like) using computer devices 114A through114N (and in some embodiments, merchants 116A through 116N may accessthe promotional system 102 directly). The promotional system 102 maycomprise a promotional server 104 in communication with a promotionaldatabase 106. The promotional system 102 may further have access to acorpus of promotion options gleaned from a structure database 108, ahistorical database 110, or provided from another external channel. Thecorpus of promotion options corresponds to a set of promotion optionspreviously offered (or currently on offer) by the promotion andmarketing service (or a sufficiently similar competitor). The corpusidentifies the promotion options, as well as a mapping between eachpromotion option and one or more related services. In addition, thepromotional system 102 may access a structure database 108 that storespromotion options, promotion option structures, and promotionstructures, and which, in some embodiments, may additionally storescoring and/or ranking information regarding the promotion options,promotion option structures, and promotion structures. The promotionalsystem may additionally have access to a historical database 110 thatstores historical information regarding previously offered promotions.

The promotional system 102 is, in some examples, able to generate,deploy, and/or update the structure database 108, as will be describedbelow.

The promotional server 104 may be embodied by a computing system, suchas apparatus 200 shown in FIG. 2. As illustrated in FIG. 2, theapparatus 200 may include a processor 202, a memory 204, an input/outputmodule 206, a communications module 208, an editing module 210, and arating module 212, and may be configured to execute the operationsdescribed below. In some embodiments, the processor 202 (and/orco-processor or any other processing circuitry assisting or otherwiseassociated with the processor) may be in communication with the memory204 via a bus for passing information among components of the apparatus.The memory 204 may be non-transitory and may include, for example, oneor more volatile and/or non-volatile memories. In other words, forexample, the memory may be an electronic storage device (e.g., acomputer readable storage medium). The memory may be configured to storeinformation, data, content, applications, instructions, or the like, forenabling the apparatus to carry out various functions in accordance withan example embodiment of the present invention.

The processor 202 may be embodied in a number of different ways and may,for example, include one or more processing devices configured toperform independently. Additionally or alternatively, the processor mayinclude one or more processors configured in tandem via a bus to enableindependent execution of instructions, pipelining, and/ormultithreading.

In an example embodiment, the processor 202 may be configured to executeinstructions stored in the memory 204 or otherwise accessible to theprocessor. Alternatively or additionally, the processor may beconfigured to execute hard-coded functionality. As such, whetherconfigured by hardware or software methods, or by a combination thereof,the processor may represent an entity (e.g., physically embodied incircuitry) capable of performing operations according to an embodimentof the present invention while configured accordingly. As anotherexample, when the processor is embodied as an executor of softwareinstructions, the instructions may specifically configure the processorto perform the algorithms and/or operations described herein when theinstructions are executed.

In some embodiments, the apparatus 200 may include an input/outputmodule 206 that may, in turn, be in communication with processor 202 toprovide output to the user and, in some embodiments, to receive anindication of a user input. The input/output module may comprise a userinterface and may include a display and may comprise a web userinterface, a mobile application, a client device, a kiosk, asales-person device, or the like. In some embodiments, the input/outputmodule 206 may also include a keyboard, a mouse, a touch screen, touchareas, soft keys, a microphone, a speaker, or other input/outputmechanisms. The processor and/or user interface circuitry comprising theprocessor may be configured to control one or more functions of one ormore user interface elements through computer program instructions(e.g., software and/or firmware) stored on a memory accessible to theprocessor (e.g., memory 204, and/or the like).

Meanwhile, the communications module 208 may be any means such as adevice or circuitry embodied in either hardware or a combination ofhardware and software that is configured to receive and/or transmit datafrom/to a network and/or any other device or module in communicationwith the apparatus 300. In this regard, the communication interface mayinclude, for example, an antenna (or multiple antennas) and supportinghardware and/or software for enabling communications with a wirelesscommunication network. Additionally or alternatively, the communicationinterface may include the circuitry for interacting with the antenna(s)to cause transmission of signals via the antenna(s) or to handle receiptof signals received via the antenna(s). In some environments, thecommunication interface may additionally or alternatively support wiredcommunication. As such, the communication interface may include acommunication modem and/or other hardware/software for supportingcommunication via cable, digital subscriber line (DSL), universal serialbus (USB), or other mechanisms.

The editing module 210 may be used to analyze, parse, and update acorpus containing promotion options and corresponding mappings toservices. In this regard, the editing module 210 may add promotionoptions to the structure database 108 and generate promotion optionstructures based on one or more promotion options stored in the corpus.Similarly, the editing module 210 may be used to update informationcontained in promotion options and/or promotion option structuresalready stored in structure database 108. Moreover, the editing module210 may be used to add promotion structures to the structure database108, or edit promotion structures already stored in the structuredatabase 108. Finally, the editing module 210 may delete any promotionoptions, promotion option structures, or promotion structures from thestructure database 108 as appropriate. As a result, the editing module210 is able to dynamically modify the foundational information uponwhich future promotions are developed using the automated deal guidesystem.

The rating module 212 may be used to rate, and in some embodiments rank,the various promotion options, promotion option structures, andpromotion structures stored in the structure database 108. In thisregard, the rating module 212 may access historical database 110 togather information that may be used to rate any individual promotionoption, promotion option structure, or promotion structure based on oneor more metric variables. In this regard, the rating module 212 is ableto identify relevant metric variables using which the rate theinformation stored in the structure database 108. Upon rating, and insome embodiments ranking, the various information stored in thestructure database 108, the rating module may further store the ratings(and rankings) in the structure database 108 in correspondence with therated (or ranked) promotion option, promotion option structure, orpromotion structure.

In one embodiment, a sales representative may interact with theapparatus 200 to view one or more available promotion structure for aparticular service in a service taxonomy, in accordance with exampleembodiments of the invention. One such example of a salesperson deviceis shown in co-owned U.S. application Ser. No. 13/927,742 filed Jun. 26,2013, which is incorporated herein by reference in its entirety.However, other embodiments of the present invention may involve amerchant using a merchant device (e.g., 116A-116N) to directly generatepromotion structures outside of the context of a salesperson-merchantinteract.

Referring now to FIG. 3, a block diagram is illustrated showing anexample apparatus 300 that may be configured to enable a salesperson(or, in some embodiments, a merchant) to generate a promotion structureaided by the promotional system 102, in accordance with embodiments ofthe present invention.

In FIG. 3, the apparatus 300, which may embody sales representativedevice 114 or merchant device 116, may include or otherwise be incommunication with a processor 302, a memory 304, a communicationsmodule 308, and a user interface 306. In some embodiments, the processor(and/or co-processor or any other processing circuitry assisting orotherwise associated with the processor) may be in communication withthe memory 304 via a bus for passing information among components of theapparatus. The memory 304 may be non-transitory and may include, forexample, one or more volatile and/or non-volatile memories. In otherwords, for example, the memory may be an electronic storage device(e.g., a computer readable storage medium). The memory may be configuredto store information, data, content, applications, instructions, or thelike, for enabling the apparatus to carry out various functions inaccordance with an example embodiment of the present invention.

The processor 302 may be embodied in a number of different ways and may,for example include one or more processing devices configured to performindependently. Additionally or alternatively, the processor may includeone or more processors configured in tandem via a bus to enableindependent execution of instructions, pipelining, and/ormultithreading.

In an example embodiment, the processor 302 may be configured to executeinstructions stored in the memory 304 or otherwise accessible to theprocessor. Alternatively or additionally, the processor may beconfigured to execute hard-coded functionality. As such, whetherconfigured by hardware or software methods, or by a combination thereof,the processor may represent an entity (e.g., physically embodied incircuitry) capable of performing operations according to an embodimentof the present invention while configured accordingly. Alternatively, asanother example, when the processor is embodied as an executor ofsoftware instructions, the instructions may specifically configure theprocessor to perform the algorithms and/or operations described hereinwhen the instructions are executed.

In some embodiments, the apparatus 300 may include a user interface 306that may, in turn, be in communication with processor 302 to provideoutput to the user and receive an indication of user input. As such, theuser interface may include a display and may comprise a web userinterface, a mobile application, a client device, a kiosk, and/or thelike. In some embodiments, the user interface 306 may also include akeyboard, a mouse, a joystick, a touch screen, touch areas, soft keys, amicrophone, a speaker, and/or other input/output mechanisms. Theprocessor and/or user interface circuitry comprising the processor maybe configured to control one or more functions of one or more userinterface elements through computer program instructions (e.g., softwareand/or firmware) stored on a memory accessible to the processor (e.g.,memory 304, and/or the like).

Meanwhile, the communications module 308 may be any means such as adevice or circuitry embodied in either hardware or a combination ofhardware and software that is configured to receive and/or transmit datafrom/to a network and/or any other device or module in communicationwith the apparatus 300. In this regard, the communication interface mayinclude, for example, an antenna (or multiple antennas) and supportinghardware and/or software for enabling communications with a wirelesscommunication network. Additionally or alternatively, the communicationinterface may include the circuitry for interacting with the antenna(s)to cause transmission of signals via the antenna(s) or to handle receiptof signals received via the antenna(s). In some environments, thecommunication interface may additionally or alternatively support wiredcommunication. As such, for example, the communication interface mayinclude a communication modem and/or other hardware/software forsupporting communication via cable, digital subscriber line (DSL),universal serial bus (USB), or other mechanisms.

Structure Characterization

To enable a user (such as a sales representative, a merchant, or anyother entity interacting with the promotion system) to use thepromotional system 102 to develop promotions, the structure database 108must be populated with promotion information that can be quickly andefficiently identified and sorted. In some examples, the structuredatabase 108 may include one or more historical promotions, thepromotions using machine readable text that includes a promotionsubtitle (single option promotion) or promotion voucher titles(multi-option promotion). Each option in single option or multi-optionpromotion is tagged with a service or multiple services based on aservice hierarchy or taxonomy defined by the promotion and marketingservice. As is used herein, a service hierarchy or taxonomy may bedefined for promotions, promotions in a local area or the like. In someexamples, a service taxonomy may provide a predefined hierarchicalstructure that includes at least 3 levels. In such cases, a label may beassociated with one or more labels from a first category and the one ormore labels from the first category are then associated to a label froma second category. For example, the label “lobster” may be associated to“seafood”. “Seafood” may then be associated to “food and drink”.Additional information related to a service hierarchy may be found inU.S. application Ser. No. 13/893,044, filed May 13, 2013, which isincorporated herein by reference in its entirety. In this regard, aprinciple function of the promotional system 102 surrounds the analysisof promotions, and the development of data structures (here, promotionoption structures), which can be effectively be manipulated.

To accomplish this task, the promotional system 102 must discover theunderlying characteristics that define a promotion. Analyzing apromotion, however, requires an understanding of its constituentelements. In this regard, embodiments of the present invention involvethe evaluation of promotion options stored in structure database 108. Insome embodiments, these promotion options are gathered from historicalrecords, such as those that might be stored in historical database 110.In other embodiments, the promotion options may be gathered in real timeas they are offered by the promotion and marketing system. In yet otherembodiments, the promotion options may be entered manually into thestructure database 108. Regardless of the manner with which they arecollected, however, promotion options, as defined above, describeparticular offers that merchants may be willing to make. In this regard,meaningfully parsing the constituent elements of promotion optionsprovides the foundational structure for generating and evaluating themerits of future promotions.

Accordingly, to characterize the structure of a promotion option, thepromotional system 102 must first be able to parse the promotion optioninto it's constitute elements. While parsing text has been a field ofstudy for years, the promotional system 102 is designed to parse textnot based on its grammar, but rather based on thematic conceptsdescribed by different portions of the promotion option. In other words,the purpose of parsing promotion options is to identify “key” componentsthat form the essential features of the promotion option's underlyingservice.

In one embodiment, the promotional system 102 harvests these “key”features using frequency analysis on all promotion options associatedwith a particular service. To accomplish this, the promotional system102 must analyze a portion of the promotion option. In this regard, eachpromotion option includes a title, and, if it comprises a single-optionpromotion, a descriptive subtitle. If the promotion option comprises amulti-option promotion, however, then each of the multiple options has acorresponding voucher title. The promotional system 102 accordinglyextracts “key” features from either the subtitle or each voucher titleof every promotion option associated with the particular service.

In some embodiments, prior to extracting “key” features, the promotionalsystem 102 normalizes the subtitles and voucher titles. Thisnormalization process involves filtering out stop words (e.g., “the,”“is,” “at,” “which,” “on,” etc.). In addition, the normalizing processfor the title of a promotion option considers the mapping betweendifferent ways of referring to concepts (e.g., “1 hour” is equivalent to“60 minutes”) in order to identify equivalencies. In some embodiments,the mappings occur on a term by term basis, so that equivalencies (suchas “massage Swedish” being equivalent to “Swedish massage”) can beidentified, although some equivalency mappings may be considered onlyfor particular services. As the structure database 108 grows and thepromotional system 102 evaluates more and more titles, the storedequivalent term information may similarly grow. In some embodiments,users may validate the results of the normalizing process, to ensurethat its accuracy grows over time.

Extracting features using frequency analysis may comprise mining thetopmost K occurring single terms, bigrams (two term pairs), and trigrams(three term tuples) from the promotion options to use as the “key”features signifying the associated service. In this regard, K may be apredefined number (e.g., 20), and the top K single terms, the top Kbigrams, and the top K trigrams are extracted from the promotionoptions.

Accordingly, the number of extracted features (K) may be varied bydesign, which may allow the promotion and marketing service tomanipulate the nature of promotion option components, based on itsbusiness objectives with regard to a particular service. For example,setting K to be a large number will produce a large number of extractedfeatures, and therefore having a larger data set, the componentgroupings can be smaller and more specific to the particular terminologyused for promotion options regarding the service. Moreover, thecomponents may more fully capture the sets of features that areequivalent. However, setting K to a small number may result in componentgroupings that overlook a larger percent of the features in thepromotion options, but a smaller K may make it possible to ignorepotential “noise” that might be otherwise be erroneously classified assubstantive if a large K were chosen.

In some embodiments, of course, the number of extracted single terms,bigrams, and trigrams need not be equal. Moreover, the number ofextracted terms may not be a predetermined number, but rather thoseterms that occur with a frequency above a predefined threshold. Forinstance, it may become clear that terms that do not occur more thanfive times in promotion option language are unlikely to be meaningfullydescriptive, whereas terms that occur more often should be extracted. Asabove, the frequency thresholds for extracted single terms, bigrams, andtrigrams may be different (for instance, although the threshold forextracting a single term may be high, the threshold for extracting atrigram may be much lower, given the relative infrequency of a trigramappearing repeatedly in the first place). In this regard, the frequencythresholds for extracting different n-gram terms may be based on astatistical distribution of the term frequency (e.g., the threshold mayinclude the topmost quintile of single terms, bigrams, or trigramswithin a particular service hierarchy).

Due to the fact that in natural language, the meaning of a term isdriven by its context, the promotional system 102 applies a groupingschema for these extracted features to derive and underlying conceptthat is thematically present in multiple extracted features. The resultis a group of features described by a component, which can thereafter beused to describe the identified concept. For each such concept, thecomponent can be used in place of the various features, to reduce thevariability with which specific concepts are described.

In some embodiments, this grouping may be performed manually. However,manual grouping retains a high likelihood of introducing human errorinto the grouping process. Accordingly, in other embodiments, thegrouping is a computerized process undertaken by the promotion system102. For instance, in one such embodiment, as new data is considered,the features will be extracted using the same method as is currentlydone (e.g., mined term frequency analysis). The newly extracted featuresmay be grouped using machine learning methodology that leveragesimilarity measures of extracted features to previously groupedfeatures. In this regard, if a newly extracted feature is ‘close’ to apreviously-grouped feature, the newly extracted feature is grouped withthe previously-grouped feature. Otherwise, a new grouping cluster iscreated in which the newly-extracted feature is listed as a member.

Depending on the implementation, the grouping may be performed initiallyfor existing promotion options, and then performed subsequently only onnew promotion options that are added to the structure database 108.Alternatively, the grouping of features into components may beperiodically repeated on all of the promotion options stored in thestructure database 108, to ensure maximal extraction of features as morepromotion data exists for component construction.

Some example feature grouping may comprise the following:

1. Leisure Offers/Activities Running Component: 1

[1] [‘1’,‘5k’] [‘1’,‘entry’] [‘1’,‘entry’,‘1’]

[‘1’,‘half-marathon’,‘entry’] [‘1’,‘month’,‘half-marathon’]

[‘race’,‘registration’,‘1’]

2. Leisure Offers/Activities Running Component: entry

[entry] [‘1’,‘entry’] [‘entry’,‘2’] [‘half-marathon’,‘entry’]

[‘race’,‘entry’] [‘1’,‘entry,‘1’] [1’,‘half-marathon’,‘entry’]

[‘5k’,‘race’,‘entry’] [‘entry’,‘zombie’,‘mud’]

3. Leisure Offers/Activities Running Component: 5k

[5k] [‘1’,‘5k’] [‘5k’,‘race’] [‘5k’,‘registration’]

[‘5k’,‘race’,‘8’] [‘5k’,‘race’,‘entry’] [‘adventure’,‘5k’,‘race’]

[‘color’,‘rad’,‘5k’] [‘rad’,‘5k’,‘race’]

4. Leisure Offers/Activities Running Component: race

[race] [‘5k’,‘race’] [‘race’,‘entry’] [‘race’,‘registration’]

[‘race’,‘saturday’] [‘race’,‘september’] [‘5k’,‘race’,‘8’]

[‘5k’,‘race’,‘entry’] [‘adventure’,‘5k’,‘race’]

[‘race’,‘registration’,‘1’] [‘race’,‘registration’,‘2’]

[‘race’,‘september’,‘29’] [‘rad’,‘5k’,‘race’]

5. Leisure Offers/Activities Running Component: registration

[registration] [‘5k’,‘registration’] [‘race’,‘registration’]

[‘registration’,‘2’] [‘race’,‘registration’,‘1’]

[‘race’,‘registration’,‘2’]

6. Beauty/Wellness/Health Massage—Full Body Component: Energy

[energy] [‘jade’,‘stone’] [‘energy’,‘stone’]

7. Beauty/Wellness/Health Massage—Full Body Component: Mother

[mother] [mom] [female]

In the above example feature groupings, the “Leisure Offers/Activities”represents a category, the service (also referred to as a primary dealservice, or PDS) is “Running”, and each component (“1”, “entry”, “5k”,“race”, and “registration”) corresponds to a series of features (singlewords, bigrams, and trigrams) extracted from promotion options.

Using the components generated by this feature extraction, thepromotional system 102 is configured to generate promotion optionstructures based on the promotion options stored in the structuredatabase 108. In this regard, for a target promotion option, thepromotional system 102 may analyze the target promotion option and tagit with the components into which its features are grouped.

In addition, the promotional system 102 may develop a new title thatmore accurately represents the content of the promotion option. In thisregard, the promotional system 102 may use term equivalencies identifiedfor normalization and feature extraction and the region, peer-group,and/or market-segments in which specific terms are most frequently usedto create titles for promotion option structures that reflectterminology familiar to the expected viewer of the promotion optionstructure. In other embodiments, the promotional system 102 may select atitle based on previously used titles. In yet other embodiments, thepromotional system 102 may generate universal titles based on thenormalized features of the promotion option, and may accordingly use theuniversal titles to more accurately represent the content of thepromotion option. As yet another alternative, the promotional system 102may generate a pick list of selectable choices for each element of thetitle based on previously offered promotions, thereby enabling the salesrepresentative and/or merchant to specifically tailor the title of thepromotion option.

After tagging the promotion option with relevant components andnormalizing its title, the promotional system 102 may generate apromotion option structure comprising the components with which thetarget promotion option was tagged, and having a familiar,automatically-generated title.

Development of the promotion option structure enables the promotionsystem 102 to thereafter generate promotion structures. In general, eachpromotion may comprise one or multiple promotion options. Since eachoption can be represented by its corresponding promotion optionstructure, the promotional system 102 may generate a promotion structurebased on the promotion option structures stored in the structuredatabase 108. A unique set of option structures comprises a promotionstructure.

Consider the promotion (with promotion key 1593976426) made up of thefollowing options:

Small area: unlimited laser hair-removal sessions for one year

Medium area: unlimited laser hair-removal sessions for one year

Full body: six laser hair-removal sessions

Large area: unlimited hair-removal sessions for one year

The promotion structure for this promotion may comprise the following:

Option 1: Component: Small Area; Component: 1-year: Component: UnlimitedOption 2: Component: Medium Area; Component: 1-year: Component:Unlimited

Option 3: Component: 6 Sessions

Option 4: Component: Large Area; Component: 1-year: Component: Unlimited

Turning now to FIG. 4, example operations for characterizing thestructure of a promotion are illustrated from the perspective of apromotion and marketing service. The operations illustrated in FIG. 4may, for example, be performed by the promotional system 102 (e.g.,promotional server 104), with the assistance of, and/or under thecontrol of one or more devices, such as apparatus 200, and may useprocessor 202, memory 204, input/output module 206, communicationsmodule 208, and editing module 210.

In operation 402, the apparatus 200 includes means, such as input/outputmodule 206, communications module 208, or the like, for accessing acorpus of machine readable text generated based on a plurality ofpromotions, wherein each of the plurality of promotions comprises atleast one promotion option associated with at least one service.

In operation 404, the apparatus 200 includes means, such as processor202, editing module 210, or the like, for extracting features from thepromotion options, the features being mapped to services associated withrespective promotion options from which the features are extracted. Inthis regard, extracting features from a target promotion option mayinclude analyzing a frequency with which single terms, bigrams, andtrigrams occur in the target promotion option, and extracting singleterms, bigrams, and trigrams based on the frequency with which thesingle terms, bigrams, and trigrams occur in the target promotionoption. In some embodiments, extracting single terms, bigrams, andtrigrams may comprise extracting a first number of most frequentlyoccurring single terms, extracting a second number of most frequentlyoccurring bigrams, and extracting a third number of most frequentlyoccurring trigrams. In one such embodiment, the first number, the secondnumber, and the third number are equal to each other. In otherembodiments, extracting single terms, bigrams, and trigrams comprisesextracting the single terms, bigrams, and trigrams that occur withfrequencies that satisfy one or more predefined thresholds.

In some embodiments, the promotion options are normalized prior toextracting the one or more features. As described above, thisnormalizing process may include removing stop words from the relevantportions of the promotion options, and/or replacing words in thepromotion option with equivalent standardized words.

In operation 406, the apparatus 200 includes means, such as processor202 or the like, for identifying the one or more components associatedwith the extracted features. In some embodiments, identifying the one ormore associated with the extracted features comprises selecting one ormore components based on terms occurring among the extracted features,defining groups of extracted features based on the selected one or morecomponents, and associating each extracted feature with one of theselected components based on the defined groups.

In operation 408, the apparatus 200 includes means, such as processor202, editing module 210, or the like, for tagging each promotion optionwith every component associated with at least one feature of thepromotion option.

Finally, in operation 410, the apparatus 200 includes means, such asprocessor 202, editing module 210, or the like, for updating a structuredatabase using the tagged promotion options. In one embodiment, updatingthe structure database using the tagged promotion options comprises, foreach tagged promotion option, generating a promotion structurecomprising the tagged components, associating the promotion structurewith the at least one service associated with the tagged promotionoption, and storing the promotion option structure in the structuredatabase 108. In one such embodiment, generating the promotion structureincludes developing a new title for the promotion structure based on atleast one of term equivalencies, region, peer group, or market segment.

As described above, the promotional system 102 is able to characterizethe structure of promotions in a way that can be automated, increasesconsistency, and organizes the various promotion information in thestructure database 108 such that it can be optimized scored, ranked, andused by sales representatives to generate new promotions quickly andefficiently.

Optimization, Scoring, and Ranking

Once the structure database 108 is populated with promotion informationthat can be quickly and efficiently identified and sorted, furtherexploitation of promotion information requires the optimization ofvarious promotion options, promotion option structures, and promotionstructures. In this regard, another principle function of thepromotional system 102 is the scoring and ranking of promotioninformation, which can be used by sales representatives to quickly andefficiently present good promotion options to merchants. Morespecifically, based on the scoring and ranking of elements of thestructure database 108, the promotional system 102 can identifypromotion structures to suggest to merchants, as well as identifyoptimal pricing bands, value bands, and discount bands that can improvethe ability of sales representatives to negotiate specific promotionalterms with merchants.

Optimizing the promotion information requires the scoring of the threeprinciple elements stored in the structure database 108: promotionoptions, promotion option structures, and promotion structures.

As described herein, promotion option scores are important in that theyprovide insight into the efficacy of specific promotion terminology(compared to promotion option structures, which, as shown above, arespecifically designed to avoid unique terminology), and also becausepromotion option scores provide the foundational variables fordetermining promotion option structure scores and, by extension,promotion structure scores. Accordingly, scoring promotion options iscentral to scoring and ranking all elements of the structure database108. In this regard, there are two frequently methods for scoringpromotion options: a first method, in which promotion option scores aredetermined by the frequency of title occurrence within a particularservice, and a second method, where promotion option scores aredetermined by a function based on metric variables.

The first scoring method is straightforward: the promotional system 102determines the frequency with which a promotion option title occurs in apromotion advertising an identified service (e.g., by consultingstructure database 108 or historical database 110, or the like), and therelative frequency of occurrence indicates the appropriate score of thepromotion option, where those promotion options occurring morefrequently receive a higher score than those promotion options occurringless often.

The second scoring method, on the other hand, takes into account amultitude of different factors, and is highly configurable based on thebusiness goals of the promotion and marketing service. In this regard,the promotional system 102 stores (and may store in historical database110) information regarding metric variables, for use in rating promotionoptions (and promotion option structures, as described below). In thisregard, the weighting of each metric variable is designed to change inorder to support different business objectives (e.g., the weight of theactivation metric variable may be increased relative to the bookings per1000 impressions if the business goal is increasing user base, ratherthan efficiency of advertising). Moreover, this flexibility supports thedifferent fundamental drives of promotions that are often completelydependent on the category taxonomy within which the promotion resides.For instance, the return metric variable may be a better reflection of a“good” promotion within a service category than within a Health, Beauty,and Wellness category.

An example of the estimated weight to provide to various metrics forpromotions falling within a series of categories is shown in Table 1. Inthis regard, eBPM represents e-bookings per thousand featured engagedsubscribers, ePPM represents profit per thousand featured engagedsubscribers, QPM represents quantity per thousand featured engagedsubscribers, and WAPP represents a weighted average price point.

TABLE 1 Metric Weightings per Category Activation Category eBPM ePPM QPMRate WAPP Refunds Beauty/Wellness/ 27 28 14 12 18 0 Healthcare CharityFood & Drink 24 25 16 19 16 0 Goods Leisure Offers/ 26 28 14 18 15 0Activities Services 28 32 10 11 13 6 Shopping 26 29 13 15 17 0 TicketsTravel

Table 1 should not be construed as describing every possible metricvariable, but is merely provided as an example. Due to the malleabilityof the weights (and potentially changing business objectives), thealgorithms shown below are designed to allow for the weightings tochange frequently.

The second method of calculating promotion option scores, therefore,comprises applying the equation:

Opt_(Score)=Opt_(MetricScore)+Opt_(Strength)+Opt_(Recency)

Where,

Opt_(MetricScore) = W₁eBPM + W₂ePPM + W₃eQPM + W₄  Activations + W₅WAPP + W₆  Refunds$\mspace{20mu}{{Opt}_{Strength} = \frac{{Num\_ Opts}{\_ inStruct}{\_ with}{\_ same}{\_ title}}{{Num\_ Opts}{\_ inStruct}}}$$\mspace{20mu}{{Opt}_{Recency} = \frac{Avg\_ StrucRecency}{Opt\_ Recency}}$

Wherein the values of W_(i) are given by the metric weights from theinitial weightings (subject to change). In addition, theOpt_(MetricScore), Opt_(Strength), and Opt_(Recency) scores may in someembodiments first be normalized using z-transforms to z-scores.Accordingly, using either of these methods, the promotional system 102is able to calculate a score for each promotion option in the structuredatabase 108.

The scores for promotion option structures may, in some embodiments, bebased on the promotion option scores. In this regard, a first method ofcalculating the score of a target promotion option structure is to takethe average of the top P percentile option scores associated with thetarget promotion option structure (within a PDS). For instance, giventhat the top P percentile results in a list if n options, each withscore S_(i), for i=1 . . . n, then the promotion option structure scoreis defined as:

${OptStrucScore} = \frac{\sum_{i = 1}^{n}S_{i}}{n}$

However, this is not the only potential method to calculate promotionoption structure scores. Similarly to the above-described operations forcalculating a promotion option score based on metric variables,promotion option structures can also be scored based on these metricvariables. For the purpose of calculating the above promotion optionscores and also to score each promotion option structure, thepromotional system 102 may calculate the following metric variables:

Average lifetime structure impression,

Average lifetime structure booking amount,

Average lifetime structure revenue amount,

Average lifetime structure booking quantity,

Average lifetime structure WAPP (Avg_WAPP),

Average lifetime structure Activations (Avg_Activations),

Average lifetime structure Reactivations (Avg_Reactivations),

Average lifetime structure Refunds (Avg_Refunds),

Average number of Days since start date of all deals within PDS(Avg_PDSRecency), and

Average number of Days since start date of all options with structurewithin PDS (Avg_StrucRecency).

Some of the above values are used to calculate the average of thefollowing respective metrics:

Average lifetime structure eBPM (Avg_eBPM),

Average lifetime structure ePPM (Avg_ePPM), and

Average lifetime structure eQPM (Avg_eQPM)

In addition, the promotional system 102 also calculates the followingproperties:

Number of options with structure within PDS (Num_Opts_inStruct), and

Number of options within PDS (Num_Opts_inPDS).

Using the above listing of properties, the promotional system 102calculates three main factors:

(1) The metric score, given by:

${OptStruc}_{MetricScore} = \frac{{weighted}\mspace{14mu}{sum}\mspace{14mu}{of}\mspace{14mu}{metrics}}{100}$

Where the weighted sum of metrics is based on the category and metricweights, described above. For example, if the relevant category for apromotion has appropriate weightings W_(i), where i denotes the i^(th)metric,

weighted  sum  of  metrics = W₁Avg_(eBPM) + W₂Avg_(ePPM) + W₃Avg_(eQPM) + W₄Avg_(Activation) + W₅WAvg_(WAPP) + W₆Avg_(eRefunds)

(2) Structure Recency (ratio of the number of days since the start dateof promotion options), defined as follows:

${OptStruc\_ Recency} = \frac{Avg\_ PDSRecency}{Avg\_ StrucRecency}$

(3) Option Structure Strength, defined as follows:

${OptStruc\_ Strength} = \frac{{Num\_ Opts}{\_ inStruct}}{{Num\_ Opts}{\_ inPDS}}$

Accordingly, the promotion option structure score is:

OptStrucScore=OptStruc_(MetricScore)×OptStruc_(Recency)×OptStruc_Strength

Finally, each promotion structure is scored based on the scores of thepromotion option structures it comprises. In this regard, the promotionstructure score comprises the average of the promotion option structurescores it is composed of, log normalized within a service.

For example, if a promotion is made up of options with scores S₁, S₂,and S₃, where each has taxonomy T₁, T₂, and T₃, respectively, eachoption score is normalized such that:

$S_{i} = {\log\left\lbrack {1 + \frac{S_{i} - T_{i{({min\_ score})}}}{T_{i{({max\_ score})}} - T_{i{({min\_ score})}}}} \right\rbrack}$

Where T_(i(min_score)) is the minimum score of all options within thePDS defined by taxonomy T_(i) and T_(i(max_score)) is the maximum scorewithin the PDS. As a result, the promotion structure score is defined asthe average of all three scores, such that:

${PromotionScore}{= \frac{\sum_{i = 1}^{3}S_{i}}{3}}$

In addition to scoring individual promotion options, promotion optionstructures, and promotion structures, however, the promotional system102 is able to determine pricing, value, and discount bands to associatewith promotion option structures. Based on the above-defined scores, aband can be narrowed to a small enough range to eliminate as muchvariability as possible from the promotion negotiation that might occurbetween a sales representative and a merchant. In this regard, pricing,value, and discount bands may be determined for particular peer groups(e.g., similar regions, demographics, locations, merchants, or thelike). In this regard, the promotion options may be ranked, and theprice, value, and discounts from the top ranking P percentile optionsare used to establish the pricing, value, and discount bands,respectively. In one embodiment, the price band comprises a range fromthe single highest price and the single lowest price of the top Poptions. Similarly, the value band may comprise a range from the singlegreatest value to the single worst value of the top P options, and thediscount band may comprise a range from the single largest discount tothe single smallest discount of the top P options.

Turning now to FIG. 5, example operations are provided for scoringelements of the structure database 108. The operations illustrated inFIG. 5 may, for example, be performed by the promotional system 102(e.g., promotional server 104), with the assistance of, and/or under thecontrol of one or more devices, such as apparatus 200, and may useprocessor 202, memory 204, input/output module 206, communicationsmodule 208, and rating module 212.

In operation 502, the apparatus 200 includes means, such as processor202, communications module 208, or the like, for accessing a structuredatabase comprising one or more promotion options, one or more promotionoption structures, and one or more promotion structures, wherein eachpromotion structure comprises one or more of the promotion optionstructures, each promotion option structure corresponds to one or moreof the promotion options, and each promotion option is associated withat least one service. This information is likely received from a salesrepresentative device 114 or a merchant device 116 and via a network112, as illustrated in FIG. 1. However, in some embodiments, thisinformation may be received by direct user input using input/outputmodule 206.

In operation 504, the apparatus 200 includes means, such as processor202, rating module 212, or the like, for generating a promotion optionscore for each promotion option in the structure database. In someembodiments, generating a promotion option score for a target promotionoption comprises determining a frequency with which the promotion optionoccurs, and generating a score for each promotion option based on afrequency with which the promotion option is included in a promotion fora particular service. In other embodiments, generating a promotionoption score for a target promotion option comprises determining one ormore relevant metric variables, evaluating the target promotion optionbased on each relevant metric variable, and generating a score for thetarget promotion option structure based on the evaluations of the targetpromotion option structure. In this regard, relevance of the one or moremetric variables is determined based on a service with which the targetpromotion option structure is associated.

In operation 506, the apparatus 200 includes means, such as processor202, rating module 212, or the like, for generating a promotion optionstructure score for each promotion option structure in the structuredatabase. In some embodiments, generating a promotion option structurescore for a target promotion option comprises generating a score for thetarget promotion option structure based on an average of promotionoption scores of promotion options corresponding to the target promotionoption structure. In other embodiments, generating a promotion optionstructure score for a target promotion option structure comprisesdetermining one or more relevant metric variables, evaluating the targetpromotion option structure based on each relevant metric variable, andgenerating a score for the target promotion option structure based onthe evaluations of the target promotion option structure. In thisregard, relevance of the one or more metric variables is determinedbased on a service with which the target promotion option structure isassociated.

In operation 508, the apparatus 200 includes means, such as processor202, rating module 212, or the like, for generating a promotionstructure score for each promotion structure in the structure database.In this regard, generating the promotion structure score for a targetpromotion structure may include setting the promotion structure score ofthe target promotion equal to an average of the promotion optionstructure scores of the one or more promotion option structurescomprising the promotion structure.

Finally, in operation 510, the apparatus 200 may optionally includemeans, such as processor 202, rating module 212, or the like, fordeveloping a value band, a price band, and a discount band for a targetpromotion structure. In some embodiments, this operation comprisesranking a set of promotion option structures comprising a targetpromotion structure, identifying a highest ranked subset of the set ofpromotion option structures, and developing a value band, a price band,and a discount band for the target promotion structure based on values,prices, and discounts from promotion option structures in the identifiedhighest ranked subset.

Accordingly, as described herein, the promotional system 102 is able toscore elements of a structure database 108 such that it can be used bysales representatives to generate new promotions having characteristicsof historically “good” promotions.

User Interface Operations

Historically, development of new promotions has involved a merchant, asales representative of a promotion and marketing service, and also a“city planner,” who manages the promotions for particular regions forthe promotion and marketing services. The city planner typically mustsign off on the terms of any new promotion. This occurs for severalreasons, one of which is that sales representatives typically arerewarded for closing deals with merchants to offer promotions, but as aresult may not have the proper incentive to maximize the quality of thepromotions that are implemented. Similarly, sales representatives maynot be able to see the wider landscape of promotions that are beingoffered in a region due to their extensive focus on closing deals withparticular merchants. City planners, on the other hand, are not burdenedby the incentive structures of sales representatives, but also are ableto witness a much wider variety of promotions that are offered in aparticular region, and accordingly can more authoritatively determinewhether a deal is “good” or not for the promotion and marketing service.

However, involvement of a city planner can sour a sales representative'snegotiation with a merchant, due to the fact that the salesrepresentative cannot unilaterally agree to modified terms withoutseeking approval from the city planner. However, this approval step canstall a relationship, which may be all the delay needed for a busymerchant to lose interest in setting up the promotion in the firstplace.

As a result, embodiments of the present invention enable salesrepresentatives to authoritatively offer promotion options without theneed to consult a city planner first, and with assurances that theoffered promotion option will be considered a “good” promotion, ifaccepted by a merchant. Moreover, these embodiments may in someembodiments be used by a sales representative at a merchant location,via a wireless device, such as a tablet computer, a smartphone, or thelike. In other embodiments, merchant self-service functionality may beoffered in a similar fashion.

To accomplish this and other goals, FIGS. 6-8 illustrate user interfacesthat sales representatives may use to gain the benefit of theinformation stored in the structure database 108, via interaction withpromotional system 102. As described above, after characterizing thestructure of promotion options in the structure database 108 and scoringthe promotion options, the promotion option structures, and thepromotion structures, promotional system 102 is able to facilitate aseamless, efficient, yet opportunistic negotiation between a salesrepresentative and a merchant.

Turning now to FIG. 6, an example user interface 600 is shown, withwhich a sales representative or merchant may interact. Embodiments ofthe present invention may be implemented using user interface 600, whichmay in one example embodiment comprise a web user interface. In thisregard, the user interface 600 may comprise a graphical user interfacethat enables a sales representative (or in some embodiments, amerchant), another computing device connected to the interface 600(e.g., apparatus 300), or the like, to receive selection of a servicefor which to present promotion information.

As shown in FIG. 6, user interface 600 may display a series of distinctselectable icons 602, each icon representing a different service that amerchant may wish to offer. Upon selection of one of the icons 602, userinterface 700 (shown in FIG. 7) is presented, as described below. Ratherthan selecting one of the service icons 602, however, user interface 600may also display selectable text 604 that enables the salesrepresentative to manually enter a service, in case the service was notpresented as an option by the user interface 600. Upon manual entry of aservice via selectable text 604, user interface 700 is similarlypresented to the user.

Turning now to FIG. 7, an example user interface 700 is shown, withwhich a sales representative or merchant may interact. User interface700 may comprise a graphical user interface that enables a salesrepresentative (or in some embodiments, a merchant), another computingdevice connected to the interface 700 (e.g., apparatus 300), or thelike, to view and select timely and relevant promotion information.

As shown in FIG. 7, user interface 700 may display a series of distinctselectable tiles 702A through 702N, each tile created from a differentpromotion option structure associated with the service selected via userinterface 600. Moreover, each promotion option used to generate a tile702 may have been identified, by the promotional system 102, as a “good”promotion option, as described previously. In some embodiments, userinterface 700 may present price bands 704, value bands 706, and discountbands 708 that correspond to the prices, values, and discountsassociated with previously offered, successful, promotion options. Inthis regard, the sales representative is presented with a great deal ofinformation that can facilitate a successful negotiation with amerchant. So long as the negotiated price, value, and/or discount stayswithin the presented bands 704, 706, and 708, the sales representativemay not be required to seek approval from a city planner to authorizeselection of a tile 702, using which to build a promotion for themerchant to offer.

In this regard, user interface 700 further presents icon 710, whichenables the sales representative to indicate that a merchant hasselected a particular tile 702. User interface 700 further presentsselectable text 712, which enables a sales representative to editdescriptors associated with the presented tiles 702, as described belowin conjunction with FIG. 8. Additionally, icon 714 enables the salesrepresentative to return to user interface 600 to select an alternativeservice, should the need arise. Finally, icon 716, as with icon 604 fromuser interface 600, enables the sales representative to manually entercustom promotion terms, and thereby manually generate a promotion forthe merchant to offer.

Turning now to FIG. 8, an example user interface 800 is shown, withwhich a sales representative or merchant may interact. User interface800 may comprise a graphical user interface that enables a salesrepresentative (or in some embodiments, a merchant), another computingdevice connected to the interface 800 (e.g., apparatus 300), or thelike, to view and select timely and relevant promotion information.

As shown in FIG. 8, user interface 800 is very similar to user interface700, except that upon selection of icon 802 in user interface 800, amenu of alternative descriptors is presented for selection. In thisregard, the alternate descriptors are generated based on the featureextraction operations described previously, and may be presented forselection based on the demographic information of the merchant (e.g.,region, specific location, demographic profile, business profile, or thelike), and/or based on the selected service.

Finally, upon reaching an agreement between the sales representative andthe merchant, an appropriate tile 702 can be selected, and thepromotional system 102 may be prompted to generate a promotion based onthe selected tile 702 and the selected descriptor information chosen bythe merchant. In this regard, the descriptor(s) from the selected tilemay be used to generate a voucher title for a corresponding promotionoption in the generated promotion. Alternatively, the promotional system102 may generate a promotion based on the custom information entered bythe sales representative. Of course, entrance of custom information may,in some embodiments, prompt a requirement of city planner review of thegenerated promotion. Finally, upon generation of the promotion, thetransaction may be completed.

Turning now to FIG. 9, a flowchart is illustrated containing exampleoperations for generating a promotion structure, in accordance withexample embodiments. The operations illustrated in FIG. 9 may, forexample, be performed by the sales representative device 114 or merchantdevice 116, with the assistance of, and/or under the control of one ormore devices, such as apparatus 300, and may use processor 302, memory304, user interface 306, and communications module 308.

In operation 902, apparatus 300 includes means, such as user interface306, communications module 308, or the like, for receiving an indicationof a service offered by a merchant.

In operation 904, apparatus 300 includes means, such as processor 302,user interface 306, communications module 308, or the like, forpresenting one or more tiles based on one or more promotion optionstructures, wherein each tile includes at least one option and adescriptor associated with each included option. In some embodiments,presenting the one or more tiles includes presenting an indication of aprice band, a value band, and a discount band derived from the one ormore promotion option structures. In at least one such embodiment, theone or more promotion option structures upon which the one or more tilesare based comprise promotion option structures for which the pricebands, the value bands, and the discount bands exceed predeterminedthresholds

In operation 906, apparatus 300 may optionally include means, such asuser interface 306, communications module 308, or the like, receiving arequest to edit a descriptor associated with an option included in thetile, presenting a list of available selections for modifying thedescriptor, receiving a selection of one of the available selections,and presenting the one or more tiles again, wherein the descriptor forwhich the request was received is replaced with the selected descriptor.

In operation 908, apparatus 300 includes means, such as user interface306, communications module 308, or the like, for receiving one or moreselections. In some embodiments, receiving the one or more selectionscomprises receiving selection of one or more of the presented tiles. Inother embodiments, receiving the one or more selections may comprisereceiving information identifying a custom promotion option structure.

Finally, in operation 910, apparatus 300 includes means, such asprocessor 302, user interface 306, communications module 308, or thelike, for generating, by a processor, a promotion structure based on theselection. In some embodiments, generating the promotion based on theselection comprises receiving selection of a price, a value, and amargin associated with each selected tile, generating a correspondingpromotion structure, the corresponding promotion structure includingfine print associated with each descriptor of the selected tile, andstoring the generated promotion structure.

Turning now to FIG. 10, an example user interface 1000 is shown, viawhich a user may receive an automated approval of a promotion design.User interface 1000 may comprise a graphical user interface that enablesa sales representative (or in some embodiments, a merchant), anothercomputing device connected to the interface 1000 (e.g., apparatus 300),or the like, to secure approval of a promotion structure without theneed for intervention by a city planner, a supervisor, manager, anapproval authority or the like.

As shown in FIG. 10, user interface 1000 may comprise a system usingwhich the sales representative (or, in some examples, the merchantthemselves) may design a promotion structure in accordance with amerchant. In some embodiments, user interface 100 may present a sequenceof windows 1002A through 1002N, that enable the sales representative tonavigate through various pages of selectable information to create apromotion structure. FIG. 10 shows one example page 1002 comprising aDeal Setup page, using which a sales representative may enter themerchant name, select a service from a service taxonomy that is to beperformed in the particular promotion by the merchant, and indicationsof promotion options.

Additionally or alternatively, any type of page that solicits relevantpromotion information (e.g., service type, promotion options or thelike) via user interface 1000 is contemplated in accordance with someembodiments. For instance, a service may be selected via a first page,as described above in conjunction with FIG. 6, after which the salesrepresentative navigates through additional pages, as shown in FIGS. 7and 8, to identify a promotion structure acceptable to a merchant. Inthis regard, the sales representative is presented with a large volumeof information that can facilitate a successful negotiation with amerchant. As noted above, in some embodiments as long as the negotiatedprice and value are within boundaries that are determined to beacceptable by the promotional system 102, approval from a city planneris not be necessary to authorize a promotion for the merchant.Advantageously, using such a method, the promotion may be made publicand/or offered to one or more consumers without the delay of waiting formanager approval.

In this regard, icon 1004 indicates whether or not the features of apromotion structure, as currently defined, are within acceptableboundaries. When promotional system 102 determines that the price (saleprice) or value (unit price) selected for the promotion structure areacceptable, as in the example shown in FIG. 10, the sales representativeis alerted to this fact because icon 1004 displays the text“Pre-Approved.” In some embodiments, all approval factors must beacceptable, although in other embodiments, only a subset of the approvalfactors need to be with acceptable boundaries for automatic approval ofa promotion structure.

Although the price and value are evaluated with respect to the bandsdescribed above, in some embodiments additional factors may beconsidered by the promotional system 102 in the automated approvaldecision-making process. For instance, the margin (a percentage ofrevenue received per promotion sold) retained by the promotion andmarketing service comprises another approval factor that may beconsidered in the automatic approval determination. In this regard, thepromotion and marketing service may identify a number of margin“governors” that control the minimum margin that must be retained for agiven promotion option. The margin governors apply depending on theservice offered. In some such embodiments, the margin may be determinedby calculating a maximum acceptable margin for retention by a merchant(the inverse of the margin retained by the promotion and marketingservice), as described in U.S. patent application Ser. No. 13/832,804,titled “Method for Determining Provider Parameters Including a ProviderMargin,” filed Mar. 15, 2013, the entire contents of which areincorporated by reference herein.

Additionally, the restrictiveness of the fine print associated with apromotion structure may also be a factor in the automatic approvaldetermination. In this regard, the fine print evaluated by promotionalsystem 102 may comprise fine print generated in the manner described inU.S. application Ser. No. 13/929,253, titled “Fine Print Builder,” filedJun. 27, 2013, the entire contents of which are incorporated herein byreference. The promotional system 102 may identify several categories offine print, including fine print that is “strongly recommended,” fineprint that is “recommended,” and fine print that is considered“restrictive.” If the fine print associated with a promotion structurecomprises only strongly recommended fine print, then automatic approvalwill be available. In some embodiments, if the fine print associatedwith a promotion structure includes fine print that is merelyrecommended, then automatic approval may still be available. However, ifthe fine print associated with a promotion structure includes fine printthat is considered restrictive, then automatic approval may not beavailable. That said, in some embodiments, if the merchant comprises apreferred merchant, than automatic approval may be available even in thecase where the promotion structure includes restrictive fine print.

In addition, the expiration date of the promotion structure may beanother factor considered by promotional system 102 in the auto-approvaldecision. In one such example embodiment, an expiration band may bedeveloped based on the promotion terms of historical promotions in asimilar fashion as the promotional system 102 develops the value, price,and discount bands above. In another such embodiment, the minimumacceptable expiration duration may be identified by the promotionalsystem 102, wherein any promotion structure having an expiration termlonger than the minimum acceptable duration may be eligible forautomatic approval. Accordingly, if the promotion structure suggests anexpiration date within the expiration band, then the promotion may beautomatically approved.

Finally, in some embodiments, the system may evaluate the promotionstructure to determine whether it is determined to be of high value,based on interest level, revenue, profit margin expectations, offerdiversity, and/or the like (hereinafter a Quantum Lead, or QL,evaluation). In this regard, the promotional system 102 may determinewhether the promotion structure includes one or more demanded servicesfrom particularly identified merchants, determined as shown in U.S.application Ser. No. 13/803,445, titled “Method, Apparatus, and ComputerProgram Product for Sales Pipeline Automation,” filed Mar. 13, 2013, theentire contents of which are incorporated herein by reference. In onesuch embodiment, the promotional system 102 may perform a check todetermine whether the merchant is QL-approved. If so, then automaticapproval of the promotion structure may be enabled. If not, then cityplanner approval may be required. In this regard, the promotional system102 may evaluate a merchant quality score to determine the potentialvalue of partnering with the merchant. Based on the merchant qualityscore, the promotional system 102 may tighten or relax the automaticapproval factors (e.g., modifying the range of the price and valuebands, modifying the expiration date threshold, modifying the fine printevaluation, or the like), thereby making it easier to automaticallyapprove promotion structures for high quality merchants, and harder toautomatically approve promotion structures for lower quality merchants.

In another embodiment, the promotional system 102 may perform this QLevaluation by comparing the options selected for inclusion in thepromotion against demand in the marketplace, the number of othermerchants offering similar options, and may additionally take intoaccount other factors (e.g., seasonality or the like) that may affectthe aggregate demand for the selected options. In addition, thepromotional system 102 may consider the price, value, margin, fineprint, and expiration of the promotion structure (e.g., the remainingapproval factors) in the QL evaluation. Ultimately, the QL evaluationmay determine, for instance, whether an evaluated promotion structurewould be highly ranked by the promotion and marketing service. In someembodiments, if promotional system 102 determines that the promotionstructure would be highly ranked (e.g., the ranking being above aparticular predetermined ranking threshold), then the promotionstructure is eligible for automatic approval, while otherwise, thepromotion structure may require the approval of a city planner. In otherembodiments, the QL evaluation may not be a threshold test foravailability of automatic approval of the promotion structure, but maybe presented for the benefit of the sales representative for thepurposes of indicating a preferred promotion or preferred service thatthey should sell or otherwise promote to the merchant.

Turning now to FIG. 11, an example user interface 1100 is shown. Userinterface 1100 is similar to interface 1000, but illustrates a scenarioin which the price, value, and discount selected for the promotionstructure are not acceptable. In this particular example, none of theapproval factors have been satisfied. As in the example shown in FIG.11, the sales representative is alerted to the lack of acceptabilitybecause icon 1004 displays the text “Needs Approval.”

Turning now to FIG. 12, a flowchart is illustrated containing exampleoperations for automatic approval of promotion structures, in accordancewith some example embodiments. The operations illustrated in FIG. 12may, for example, be performed by the promotional system 102, which maycomprise one or more devices, such as apparatus 300, and may useprocessor 302, memory 304, user interface 306, and communications module308.

In operation 1202, apparatus 300 includes means, such as processor 302or the like, for identifying a promotion structure for approval, thepromotion structure defining a promotion to be displayed via a promotionand marketing service. In some example embodiments, identifying apromotion structure for approval includes receiving selection of one ormore options and descriptor associated respectively with the one or moreoptions, receiving selection of a price, a value, and a margin for eachof the one or more options, and generating a promotion structureincluding fine print associated with descriptors of the one or moreselected options (as described in greater detail above).

In operation 1204, apparatus 300 includes means, such as processor 302or the like, for determining whether the promotion structure satisfiesautomatic approval requirements, the automatic approval requirementsincluding one or more parameters relating to the promotion structure.This may include determining whether a price associated with thepromotion structure falls outside of a price band associated with thepromotion structure. Additionally or alternatively, this determinationmay include determining whether a value associated with the promotionstructure falls outside of a value band associated with the promotionstructure. Additionally or alternatively, this determination may includedetermining whether a margin associated with the promotion structurefalls below a necessary margin. Additionally or alternatively, thisdetermination may include determining whether fine print associated withthe promotion structure comprises restrictive fine print. Additionallyor alternatively, this determination may include determining whether anexpiration date associated with the promotion structure falls outside ofan expiration band associated with the promotion structure, or indicatesa promotional term shorter than a minimum required duration.Additionally or alternatively, this determination may includedetermining whether a quantum lead evaluation indicates QL approval ofthe promotion structure.

In operation 1206, apparatus 300 includes means, such as user interface306, communications module 308, or the like, for, in an instance inwhich the promotion structure satisfies the automatic approvalrequirements, automatically approving the promotion structure fordisplay via the promotion and marketing service. However, in operation1208, apparatus 300 includes means, such as user interface 306,communications module 308, or the like, for in an instance in which thepromotion structure does not satisfy the automatic approvalrequirements, indicating that the promotion structure cannot beautomatically approved.

Accordingly, the user interface may improve the process by which newpromotions are negotiated with merchants, increase the likelihood ofpresenting merchants with strong options, improve the user experience ofboth sales representatives and merchants, and reduce reliance on cityplanners.

As will be appreciated, computer program code and/or other instructionsmay be loaded onto a computer, processor or other programmableapparatus's circuitry to produce a machine, such that execution of thecode on the machine by the computer, processor, or other circuitrycreates the means for implementing various functions, including thosedescribed herein.

As described above and as will be appreciated based on this disclosure,embodiments of the present invention may be configured as methods,mobile devices, backend network devices, and the like. Accordingly,embodiments may comprise various means including entirely of hardware ora combination of software and hardware. Furthermore, embodiments maytake the form of a computer program product on at least onecomputer-readable storage medium having computer-readable programinstructions (e.g., computer software) embodied in the storage medium.Any suitable computer-readable storage medium may be utilized, includingnon-transitory hard disks, CD-ROMs, flash memory, optical storagedevices, magnetic storage devices, or the like.

Embodiments of the present invention have been described above withreference to block diagrams and flowchart illustrations of methods,apparatuses, systems and computer program products. It will beunderstood that each block of the circuit diagrams and processflowcharts, and combinations of blocks in the circuit diagrams andprocess flowcharts, respectively, can be implemented by various meansincluding computer program instructions. These computer programinstructions may be loaded onto a general purpose computer, specialpurpose computer, or other programmable data processing apparatus toproduce a machine, such that the computer program product includes theinstructions which execute on the computer or other programmable dataprocessing apparatus create a means for implementing the functionsspecified in the flowchart block or blocks.

These computer program instructions may also be stored in acomputer-readable storage device that can direct a computer or otherprogrammable data processing apparatus to function in a particularmanner, such that the instructions stored in the computer-readablestorage device produce an article of manufacture includingcomputer-readable instructions for implementing the function discussedherein. The computer program instructions may also be loaded onto acomputer or other programmable data processing apparatus to cause aseries of operational steps to be performed on the computer or otherprogrammable apparatus, thereby producing a computer-implemented processsuch that the instructions executed on the computer or otherprogrammable apparatus cause performance of the steps and therebyimplement the functions discussed herein.

Accordingly, blocks of the block diagrams and flowchart illustrationssupport combinations of means for performing the specified functions,combinations of steps for performing the specified functions and programinstruction means for performing the specified functions. It will alsobe understood that each block of the circuit diagrams and processflowcharts, and combinations of blocks in the circuit diagrams andprocess flowcharts, can be implemented by special purpose hardware-basedcomputer systems that perform the specified functions or steps, orcombinations of special purpose hardware and computer instructions.

Many modifications and other embodiments of the inventions set forthherein will come to mind to one skilled in the art to which theseembodiments of the invention pertain having the benefit of the teachingspresented in the foregoing descriptions and the associated drawings.Therefore, it is to be understood that the embodiments of the inventionare not to be limited to the specific embodiments disclosed and thatmodifications and other embodiments are intended to be included withinthe scope of the appended claims. Although specific terms are employedherein, they are used in a generic and descriptive sense only and notfor purposes of limitation.

1.-31. (canceled)
 32. A method comprising: accessing a corpus of machinereadable text, by a processor from a structure database, the corpus ofmachine readable text generated from a plurality of previously offeredpromotions, wherein each of the plurality of previously offeredpromotions includes at least one promotion option, and wherein eachpromotion option is associated with one or more components, the one ormore components associated with a plurality of groupings of features,each of the plurality of groupings identified as being indicative of anequivalent meaning; extracting, via the processor, a set of featuresfrom the promotion options; identifying, via the processor, based on theset of extracted features, the one or more components associated with agrouping of features matching a subset of the extracted features;tagging, via the processor, each promotion option that comprises everycomponent that comprises the grouping of features that matches thesubset of the extracted features of the promotion option; and updatingthe structure database using the tagged promotion options, wherein theupdating of the structure database includes updating tags associatedwith each promotion option to include every component having beenidentified as associated with the grouping of features matching any of aplurality of subsets of the extracted features of the promotion option.33. The method of claim 32, wherein the set of features being extractedare single terms, bigrams, and trigrams that occur with a frequencyabove a predefined threshold, and wherein the predefined thresholds forextracted single terms, bigrams, and trigrams are different.
 34. Themethod of claim 32, wherein the predefined thresholds for extractingdifferent n-gram terms is based on a statistical distribution of termfrequency such that each threshold is a topmost quintile of singleterms, bigrams, or trigrams within a particular service hierarchy. 35.The method of claim 32, wherein each component of the one or morecomponents comprises a term or phrase that is equivalent to a groupcomprising a subset of the features.
 36. The method of claim 32, whereinidentifying the one or more components associated with the extractedfeatures comprises: selecting one or more components based on termsoccurring among the extracted features; defining groups of extractedfeatures based on the selected one or more components; and associatingeach extracted feature with one of the selected components based on thedefined groups.
 37. The method of claim 32, wherein updating thestructure database using the tagged promotion options comprises, foreach tagged promotion option: generating a promotion structurecomprising the tagged components; associating the promotion structurewith the at least one service associated with the tagged promotionoption; and storing the promotion structure in the structure database.38. The method of claim 32, further comprising: normalizing thepromotion options prior to extracting the one or more features,including removing stop words and substituting original words withequivalent standardized words.
 39. A computer program product comprisingat least one non-transitory computer-readable storage medium havingcomputer-executable program code instructions stored therein, thecomputer-executable program code instructions comprising program codeinstructions for: accessing a corpus of machine readable text, by aprocessor from a structure database, the corpus of machine readable textgenerated from a plurality of previously offered promotions, whereineach of the plurality of previously offered promotions includes at leastone promotion option, and wherein each promotion option is associatedwith one or more components, the one or more components associated witha plurality of groupings of features, each of the plurality of groupingsidentified as being indicative of an equivalent meaning; extracting, viathe processor, a set of features from the promotion options;identifying, via the processor, based on the set of extracted features,the one or more components associated with a grouping of featuresmatching a subset of the extracted features; tagging, via the processor,each promotion option that comprises every component that comprises thegrouping of features that matches the subset of the extracted featuresof the promotion option; and updating the structure database using thetagged promotion options, wherein the updating of the structure databaseincludes updating tags associated with each promotion option to includeevery component having been identified as associated with the groupingof features matching any of a plurality of subsets of the extractedfeatures of the promotion option.
 40. The computer program product ofclaim 39, wherein the set of features being extracted are single terms,bigrams, and trigrams that occur with a frequency above a predefinedthreshold, and wherein the predefined thresholds for extracted singleterms, bigrams, and trigrams are different.
 41. The computer programproduct of claim 39, wherein the predefined thresholds for extractingdifferent n-gram terms is based on a statistical distribution of termfrequency such that each threshold is a topmost quintile of singleterms, bigrams, or trigrams within a particular service hierarchy. 42.The computer program product of claim 39, wherein each component of theone or more components comprises a term or phrase that is equivalent toa group comprising a subset of the features.
 43. The computer programproduct of claim 39, wherein identifying the one or more componentsassociated with the extracted features comprises: selecting one or morecomponents based on terms occurring among the extracted features;defining groups of extracted features based on the selected one or morecomponents; and associating each extracted feature with one of theselected components based on the defined groups.
 44. The computerprogram product of claim 39, wherein updating the structure databaseusing the tagged promotion options comprises, for each tagged promotionoption: generating a promotion structure comprising the taggedcomponents; associating the promotion structure with the at least oneservice associated with the tagged promotion option; and storing thepromotion structure in the structure database.
 45. The computer programproduct of claim 39, wherein the computer-executable program codeinstructions further comprise program code instructions for: normalizingthe promotion options prior to extracting the one or more features,including removing stop words and substituting original words withequivalent standardized words.
 46. An apparatus comprising at least oneprocessor and at least one memory including computer program code, theat least one memory and the computer program code configured to, withthe processor, cause the apparatus to at least: access a corpus ofmachine readable text, by a processor from a structure database, thecorpus of machine readable text generated from a plurality of previouslyoffered promotions, wherein each of the plurality of previously offeredpromotions includes at least one promotion option, and wherein eachpromotion option is associated with one or more components, the one ormore components associated with a plurality of groupings of features,each of the plurality of groupings identified as being indicative of anequivalent meaning; extract, via the processor, a set of features fromthe promotion options; identify, via the processor, based on the set ofextracted features, the one or more components associated with agrouping of features matching a subset of the extracted features; tag,via the processor, each promotion option that comprises every componentthat comprises the grouping of features that matches the subset of theextracted features of the promotion option; and update the structuredatabase using the tagged promotion options, wherein the updating of thestructure database includes updating tags associated with each promotionoption to include every component having been identified as associatedwith the grouping of features matching any of a plurality of subsets ofthe extracted features of the promotion option.
 47. The apparatus ofclaim 45, wherein the set of features being extracted are single terms,bigrams, and trigrams that occur with a frequency above a predefinedthreshold, and wherein the predefined thresholds for extracted singleterms, bigrams, and trigrams are different.
 48. The apparatus of claim45, wherein the predefined thresholds for extracting different n-gramterms is based on a statistical distribution of term frequency such thateach threshold is a topmost quintile of single terms, bigrams, ortrigrams within a particular service hierarchy.
 49. The apparatus ofclaim 45, wherein each component of the one or more components comprisesa term or phrase that is equivalent to a group comprising a subset ofthe features.
 50. The apparatus of claim 45, wherein the program codeconfigured to identify the one or more components associated with theextracted features comprises program code further configured to: selectone or more components based on terms occurring among the extractedfeatures; define groups of extracted features based on the selected oneor more components; and associate each extracted feature with one of theselected components based on the defined groups.
 51. The apparatus ofclaim 45, wherein the program code configured to update the structuredatabase using the tagged promotion options comprises program codefurther configured to, for each tagged promotion option: generate apromotion structure comprising the tagged components; associate thepromotion structure with the at least one service associated with thetagged promotion option; and store the promotion structure in thestructure database.
 52. The apparatus of claim 45, wherein the at leastone memory and the computer program code are further configured to, withthe processor, cause the apparatus to: normalize the promotion optionsprior to extracting the one or more features, including program code arefurther configured to remove stop words and substitute original wordswith equivalent standardized words.